﻿Imports System.ComponentModel.DataAnnotations

Namespace Ita.ProElicere.Model

    Public Class Technique
        <ScaffoldColumn(False)> _
        Public Property TechniqueID() As Integer

        Public Property TaticID() As System.Nullable(Of Integer)

        Public Overridable Property Tatic() As Tatic

        <Required(ErrorMessage:="The name is required"), StringLength(100), Display(Name:="Name")> _
        Public Property TechniqueName() As String

        <StringLength(100), Display(Name:="Name2")> _
        Public Property TechniqueName2() As String

        <Required(ErrorMessage:="The description is required"), StringLength(10000), Display(Name:="Description"), DataType(DataType.MultilineText)> _
        Public Property Description() As String

        <Required(ErrorMessage:="The method is required"), StringLength(10000), Display(Name:="Method"), DataType(DataType.MultilineText)> _
        Public Property Method() As String

        Public Property SourceID() As System.Nullable(Of Integer)

        Public Overridable Property Reference() As Reference

        <StringLength(100), Display(Name:="Source Additional")> _
        Public Property SourceAdditional() As String

        Public Property SeverityID() As System.Nullable(Of Integer)

        Public Overridable Property Severity() As Severity

        <StringLength(100), Display(Name:="Keyword1")> _
        Public Property Keyword1() As String

        <StringLength(100), Display(Name:="Keyword2")> _
        Public Property Keyword2() As String

        <StringLength(100), Display(Name:="Keyword3")> _
        Public Property Keyword3() As String

        Public Overridable Property Questionnaires() As ICollection(Of Questionnaire)

    End Class
End Namespace